home *** CD-ROM | disk | FTP | other *** search
/ AMIGA-CD 2 / Amiga-CD - Volume 2.iso / ungepackte_daten / 1994 / 6 / 01 / mini-compiler / mini.ampk / Mini-Compiler / asm / Fwrite.lib < prev    next >
Encoding:
Text File  |  1995-06-01  |  1.1 KB  |  42 lines

  1.        Idnt    _Write
  2.        Section _FWrite,Code
  3.        xref    IoResult
  4.        Xref    IoCheck
  5.        Xref    Error
  6.        Xref    Dosbase
  7.     Xref    TstTab
  8.        Xdef FWrite
  9.  
  10.     ; -------------------------------------
  11.     ; - Fwrite.lib
  12.     ; - 07-aug-93
  13.     ;
  14.     ; - D7 : Filehandle
  15.     ; - D3 : Anzahl Bytes zum Schreiben
  16.     ; - Stack : RTS.l Daten zum Schreiben
  17.  
  18.  
  19. FWrite:Clr.l   IoResult        ; Ergebnis = ok
  20.        MOVE.L  D7,D1              ; Handle der Datei
  21.        jsr     TstTab        ; Testen ob Handle ok
  22.        Tst.l   D0
  23.        Bne.s    FWok        ; Ist ok
  24.        Adda.l  d3,a7        ; Stack aufräumen
  25.        Jmp     (a4)   
  26. FWok   Move.l  (sp)+,a4
  27.        MOVE.L  A7,D2              ; Adresse Puffer
  28.        MOVEA.L Dosbase,A6
  29.        JSR     -$30(A6)
  30.        ADDA.L  D3,A7
  31.        CLR.L   IoResult
  32.        TST.L   D0
  33.        BPL.S   FWlab          ; D0 >= 0  dann alles ok
  34.        TST.L   IoCheck          ; Fehler, ausgeben und exit ?
  35.        BEQ.S   FWskip          ; Nein, weiter
  36.        Move.l  a4,-(sp)
  37.        JMP     Error
  38. FWskip:JSR     -$84(A6)          ; IOResult aufrufen
  39.        MOVE.L  D0,IoResult    ; Und in Variable abspeichern
  40. FWlab: jmp (a4)
  41.        End
  42.